This invention relates generally to peripheral devices for storing data delivered from a host computer, such data storage devices typically including hard magnetic disk drives and magneto-optic disk drives. More specifically, the invention deals with such rotating disk data storage devices incorporating a temporary memory known as a buffer in order to compensate for the rather low accessibility of the hard disk drive or like main storage. Still more specifically, the invention pertains to an improved method of, and means for, storing data in disk drives or the like with the aid of buffering.
Disk drives have won widespread commercial acceptance as peripheral data storages of computer systems. Their accessibility, however, is unsatisfactory compared with that of semiconductor memories, because in disk drives the transducer must travel across a multiplicity of annular, concentric tracks on the disk surface for accessing the individual tracks for writing or reading.
A well known remedy to this difficulty is buffering, with a buffer or a cache in the form of a semiconductor memory built into a disk drive, as taught for example in U.S. Pat. No. 4,476,526. Delivered to the disk drive from the host computer, data is first directed into the buffer memory. Upon completion of data storage in the buffer the disk drive informs the host to that effect, regardless of whether the data has then been already redirected from the buffer to the disk or not. The disk drive is thus virtually made shorter in access time, demanding less time for storing the data fed from the host.
However, the buffering of disk drives does not necessarily result in the improvement of accessibility if the data is redirected from buffer to disk immediately after being stored in the former. Suppose for instance that one data block is now being read out from the buffer and written on the disk. If then the host supplies another data block, the buffer is not in condition for accepting it. The access time of the disk drive is not shortened in this and similar cases.
The following two methods have been suggested and used in order to defeat this weakness of buffering:
1. To transfer data from buffer to disk at regular time intervals (e.g. 30 seconds). PA1 2. To transfer data from buffer to disk only when the buffer fills up.
The first described method is objectionable because data is rewritten on the disk at time intervals totally independent of those at which the host demands access to the disk drive. Since the access time intervals of the host are random, the accessibility of the disk drive is not necessarily improved in this manner. The second method is also undesirable in that data, not yet recorded on the disk, may be left stored in the buffer for indefinitely long periods of time. Such data is susceptible to destruction in the event of a power outage or a mistake in operation or handling.